A wide variety of problems that arise in financial risk management deal with various types of sequential processes. For instance, the accumulation of historical data and the calculation of relevant statistical measures typically proceed on a daily basis. Similarly, generating historical or Monte Carlo scenarios, and simulating portfolios of financial instruments over these scenarios are tasks of a repetitive nature. As another example, calibrating financial models may involve iterative algorithms that obtain successively better approximations.
Over the last several years, both the sequential processes and the risk management models that use them have become much more diverse and sophisticated. Today's financial market conditions demand the fast and efficient implementation of flexible computer applications that support a wide variety of options, including the run-time construction of complex models from diverse components. This introduces a new level of requirements for generality and flexibility of the software supporting such applications.
In many prior art risk management systems, each software component implementing a particular process for scenario or price generation is developed separately. Consequently, the level of reusability and flexibility of software components is low, and the development of software components for new models can be labor-intensive and expensive.
Accordingly, there is a need for a means to provide a sufficient set of reusable software components that can be used in the development of other components required for new risk management generation models.